A number of existing image formats include a method for extending the capabilities of the format (from hereafter known as an extension). For example, TIFF (Tag Image File Format) allows new tags to be added to store new data (such as a digitized audio recording) inside a TIFF image file. This can be accomplished by requesting a new TIFF tag number from Adobe Corporation, the developer of TIFF. Existing TIFF applications are able to open and view images containing such extension tags because the TIFF standard instructs applications to ignore any tag numbers they are not familiar with. In this case, the application would allow the image to be viewed, but would not play back the audio information. Unfortunately, if the image file is modified in any way by the application, for example, by cropping, or adjusting the color or brightness of the image, or by adding copyright information to the non-image data contained in the image, the extension data (such as an audio clip) is deleted when the modified file is saved by the TIFF application. The TIFF specification requires that unfamiliar tags be deleted, since the application does not know whether this new tag contains data that is still valid (such as an audio clip), or data which is no longer valid (such as a histogram of the number of pixels at each code value in the image).
What is needed is a mechanism for the particular extension to tell the application whether the ancillary data, which belongs to the extension, should be maintained if the baseline data in the image file is altered. In the newly developed FlashPix image format, a mechanism is specified, that enables an application to determine the validity of ancillary data in the file which belongs to a particular extension (for example, an audio extension which may contain an audio stream and other related data). This mechanism is not available in other image formats. Applications writing other formats could choose to always maintain all extension data; however, this data might be needlessly transported with the image whenever the image is copied, either from one file to another on a system or across a network. This results in wasted disk space and may decrease network performance. It may also result in the end applications using invalid extension data. The application can also choose to delete all ancillary data; however, this data may have provided important functionality which was not invalidated. The result is an image that may be much less useful than originally intended.